Realisierungsmodelle für die aspektorientierte Datenhaltung
نویسندگان
چکیده
Aspektorientierte Datenhaltung ist ein Mittel zur querschnittlichen Erweiterung eines relationalen Datenbankschemas um ein bestimmtes Merkmal. Unter geringer Einflussnahme auf das Originaldatenmodell können Zelleinträge so anhand unterschiedlicher Merkmalsausprägungen interpretiert werden. Anwendungsszenarien sind beispielsweise die nachträgliche Internationalisierung und Versionierung eines bestehenden Datenmodells ebenso wie die Implementierung einer feingranularen Rechtevergabe auf Zellebene. Dieser Beitrag soll einen Einblick in das Forschungsfeld Aspektorientierte Datenhaltung bieten und einen von mehreren möglichen Realisierungansätzen diskutieren, welche ausführlich in der gleichnamigen Studienarbeit untersucht werden. 1 Aspektorientierte Datenhaltung Bei Aspektorientierter Datenhaltung [Lie10] handelt es sich um ein Modellierungsparadigma für eine bestimmte Klasse von wiederkehrenden Problemen, die im Zusammenhang mit dem Design relationaler Datenbankschemata auftreten. Dadurch soll erreicht werden, dass potentiell alle Zellwerte des Schemas optional zu der normalen Sicht auf die Daten in Abhängigkeit von den Ausprägungen eines oder mehrerer Merkmale gespeichert und abgerufen werden können. Die erweiterten Zellwerte befinden sich in einem Raum, dessen Dimensionsachsen den betrachteten Merkmalen entsprechen. Diese Merkmale werden hier in Analogie zu Aspektorientierter Programmierung als funktionale Aspekte bezeichnet, da es sich gleichermaßen um querschnittliche und keiner Tabelle explizit zuordenbare Erweiterungen handelt, welche ein System im Ganzen betreffen [CSR02]. Ziel der Bemühungen ist der Entwurf einer Tabelleninfrastruktur, die zur Speicherung von um funktionale Aspekte erweiterten Zellwerten geeignet ist. Die entsprechenden Tabellen sollen von Anwendern als ergänzende Sicht auf die Daten genutzt werden können und dimensionale Zellwerte soweit wie möglich in Form einer eigenständigen und vom Originalschema losgelösten Einheit verwalten. Aspektorientierte Datenhaltung eignet sich beispielsweise zur nachträglichen Internationalisierung eines Datenbankschemas [Göb09], indem neue Tabellenstrukturen zur späteren Erweiterung von Zellwerten um Ländercodes (Merkmalsausprägungen des Aspekts Lokalisierung) geschaffen werden. 2 Anforderungen an Speicherungsstrukturen Formal ist ein funktionaler Aspekt A als Menge entsprechender Ausprägungen (engl. characteristics) A = {ch1, . . . , chn}, n ∈ N zu verstehen. Beispielsweise sind dem Aspekt Lokalisierung jeweilige Ländercodes zugeordnet, L = {de_DE, de_CH, en_US, . . .}. Diese Aspekte können an das Datenbankschema angekoppelt werden, wodurch sie in der Klasse angekoppelter Aspekte A aufgenommen werden: A = {Asp1, . . . , Aspm}, m ∈ N. Verfügbar werden angekoppelte Aspekte jedoch erst durch die Aktivierung an der Spalte einer Tabelle, was mittels einer Funktion Active : C → P(A), C := Menge aller zum Datenmodell gehörenden Spalten beschrieben werden kann. Beispielsweise sind in Abbildung 1 an den Spalten Col1 und Col3 von Tabelle1 unterschiedliche Aspekte aktiv, weshalb sich die jeweils erforderlichen Speicherungsstrukturen für diese Spalten unterscheiden. Den aktiven Aspekten einer Spalte c ∈ C entsprechen Kombinationen von Merkmalsausprägungen, im weiteren Konfigurationen genannt:
منابع مشابه
Analyse und Vergleich von Zugriffstechniken für funktionale Aspekte in RDBMS
KURZFASSUNG Neben klassischen fachlichen Anforderungen existieren in Anwendungssystemen oft auch querschnittliche Belange, deren Funktionalität sich nicht einfach kapseln bzw. modularisieren lässt. Vertreter dieser sogenannten funktionalen Aspekte sind beispielsweise die mehrsprachige oder versionierte Darstellung und Verwaltung von Anwendungsdaten. Nachdem sich in der Software-Entwicklung seit...
متن کاملPURE/OSEK - Eine aspektorientierte Betriebssystemfamilie für Kraftfahrzeuge
PURE/OSEK dient in diesem Papier als Beispiel, an dem gezeigt wird, wie durch geeignete Entwicklungswerkzeuge die Entwicklung von Softwarefamilien für den automotiven Bereich beherrschbar wird. Dabei steht das Management der Softwarevarianten auf Basis von Feature Modellen mittels CONSUL und die aspektorientierte Implementierung der Systemkomponenten mit Hilfe der C++ Spracherweiterung AspectC+...
متن کاملEine Taxonomie für aspektorientierte Systeme
Abstrakt: Die aspektorientierte Softwareentwicklung entwickelte sich aus der Beobachtung heraus, dass eine Vielzahl logisch zusammenhängender Softwareelemente mit Hilfe konventioneller Techniken nicht modularisierbar ist. Eine mangelhafte Modularisierung wiederum reduziert die Verständlichkeit und Wartbarkeit der Software. Aspektorientierte Systeme bieten zusätzliche Konstrukte, um ein höheres ...
متن کاملAspektorientierte Datenhaltung in Produktkonfiguratoren : Anforderungen, Konzepte und Realisierung
Inhaltsverzeichnis 1 Einleitung 1 1.
متن کاملAspektorientierte Datenhaltung - ein Modellierungsparadigma
ZUSAMMENFASSUNG Relationalen Datenbanksystemen kommt seit Jahrzehnten eine zentrale Rolle bezüglich der Speicherung von Anwendungsdaten zu. Im Fokus der nicht nur initial zu bewältigenden Aufgabe einer Datenbankmodellierung steht vor allem die strukturierte und modularisierte Abbildung von fachlichen Anforderungen aus den zugehörigen Anwendungen. In vielen Fällen stören jedoch sogenannte funkti...
متن کامل